<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=EUC-JP">
<title>Module atmos_sulfate_mod</title>
<link type="text/css" href="http://www.gfdl.noaa.gov/~fms/style/doc.css" rel="stylesheet">
<STYLE TYPE="text/css">
          .fixed {
            font-size:medium;
            font-family:monospace;
            border-style:none;
            border-width:0.1em;
            padding:0.1em;
            color:#663366;
          }
        </STYLE>
</head>
<body>
<a name="TOP"></a><font class="header" size="1"><a href="#PUBLIC INTERFACE">PUBLIC INTERFACE </a>~
          <a href="#PUBLIC DATA">PUBLIC DATA </a>~
          <a href="#PUBLIC ROUTINES">PUBLIC ROUTINES </a>~
          <a href="#NAMELIST">NAMELIST </a>~
          <a href="#DIAGNOSTIC FIELDS">DIAGNOSTIC FIELDS </a>~
          <a href="#ERROR MESSAGES">ERROR MESSAGES </a>~
          <a href="#REFERENCES">REFERENCES </a>~ 
          <a href="#NOTES">NOTES</a></font>
<hr>
<h2>Module atmos_sulfate_mod</h2>
<a name="HEADER"></a>
<!-- BEGIN HEADER -->
<div>
<b>Contact:&nbsp;</b><a href="mailto:Paul.Ginouxe@noaa.gov">   Paul Ginoux </a>
<br>
<b>Reviewers:&nbsp;</b>
<br>
<b>Change History:&nbsp;</b><a href="http://www.gfdl.noaa.gov/fms-cgi-bin/cvsweb.cgi/FMS/atmos/shared/tracer_driver">WebCVS Log</a>
<br>
<br>
</div>
<!-- END HEADER -->
<a name="OVERVIEW"></a>
<hr>
<h4>OVERVIEW</h4>
<!-- BEGIN OVERVIEW -->
<p class="text"></p>
<!-- END OVERVIEW -->
<a name="DESCRIPTION"></a>
<!-- BEGIN DESCRIPTION -->
<div>   This module is an implementation of sulfate chemistry. It contains
   tracer emissions and chemistry. The chemistry is partly based on MOZART.
   The change of concentration of SO2, DMS, SO4, MSA and H2O2 are
   calculated using monthly mean concentration of OH, HO2, jH2O2, NO3, O3,
   pH. The emissions include:
   - DMS from seawater
   - SO2 by fossil fuel, biomass burning, non-eruptive volcanoes and aircraft
   - SO4 by fossil fuel </div>
<br>
<!-- END DESCRIPTION -->
<a name="OTHER MODULES USED"></a>
<hr>
<h4>OTHER MODULES USED</h4>
<!-- BEGIN OTHER MODULES USED -->
<div>
<pre>                   fms_mod<br>          time_manager_mod<br>          diag_manager_mod<br>        tracer_manager_mod<br>         field_manager_mod<br>             constants_mod<br>atmos_tracer_utilities_mod</pre>
</div>
<!-- END OTHER MODULES USED -->
<!-- BEGIN PUBLIC INTERFACE -->
<a name="PUBLIC INTERFACE"></a>
<hr>
<h4>PUBLIC INTERFACE</h4>
<div>
<dl>
<dt>
<a href="#atmos_SOx_init">atmos_SOx_init</a>:</dt>
<dd>   The constructor routine for the sulfate module. </dd>
<dt>
<a href="#atmos_SOx_end">atmos_SOx_end</a>:</dt>
<dd>   The destructor routine for the sulfate module. </dd>
<dt>
<a href="#SOx_source_input">SOx_source_input</a>:</dt>
<dd>   This subroutine read the monthly mean concentrations of 
   OH, HO2, NO3, O3, and the monthly photodissociation rates jH2o2 and
   pH, as well as the emissions for DMS, SO2, and SO4
   *****WARNING:
   To save space only the actual month is kept in memory which implies
   that the "atmos_SOx_init" should be executed at the begining of each
   month. In other words, the script should not run more than 1 month
   without a restart </dd>
<dt>
<a href="#atmos_DMS_emission">atmos_DMS_emission</a>:</dt>
<dd>   The constructor routine for the sulfate module. </dd>
<dt>
<a href="#atmos_SO2_emission">atmos_SO2_emission</a>:</dt>
<dd>   The constructor routine for the sulfate module. </dd>
<dt>
<a href="#atmos_SO4_emission">atmos_SO4_emission</a>:</dt>
<dd>   The constructor routine for the sulfate module. </dd>
<dt>
<a href="#get_SO2_nerup_volc_emis">get_SO2_nerup_volc_emis</a>:</dt>
<dd>   This subroutine builds the emission rates of SO2 by non-eruptive volcanoes </dd>
</dl>
</div>
<br>
<!-- END PUBLIC INTERFACE -->
<a name="PUBLIC DATA"></a>
<hr>
<h4>PUBLIC DATA</h4>
<!-- BEGIN PUBLIC DATA -->
<div>None.<br>
<br>
</div>
<!-- END PUBLIC DATA -->
<a name="PUBLIC ROUTINES"></a>
<hr>
<h4>PUBLIC ROUTINES</h4>
<!-- BEGIN PUBLIC ROUTINES -->
<ol type="a">
<li>
<a name="atmos_SOx_init"></a>
<h4>atmos_SOx_init</h4>
<dl>
<dt>
<b>DESCRIPTION</b>
</dt>
<dd>   A routine to initialize the sulfate module. </dd>
<br>
<br>
</dl>
</li>
<li>
<a name="atmos_SOx_end"></a>
<h4>atmos_SOx_end</h4>
<pre>
<b>call atmos_SOx_end </b>
</pre>
<dl>
<dt>
<b>DESCRIPTION</b>
</dt>
<dd>   This subroutine writes the version name to logfile and exits. </dd>
<br>
<br>
</dl>
</li>
<li>
<a name="SOx_source_input"></a>
<h4>SOx_source_input</h4>
<dl>
<dt>
<b>DESCRIPTION</b>
</dt>
<dd></dd>
<br>
<br>
</dl>
</li>
<li>
<a name="atmos_DMS_emission"></a>
<h4>atmos_DMS_emission</h4>
<pre>
<b>call atmos_DMS_emission </b>(r, mask, axes, Time)</pre>
<dl>
<dt>
<b>DESCRIPTION</b>
</dt>
<dd>   A routine to calculate dimethyl sulfide emission form the ocean </dd>
<br>
<br>
<dt>
<b>INPUT</b>
</dt>
<dd>
<table border="0">
<tr>
<td valign="top" align="left"><tt>mask&nbsp;&nbsp;&nbsp;</tt></td><td>   optional mask (0. or 1.) that designates which grid points
   are above (=1.) or below (=0.) the ground dimensioned as
   (nlon,nlat,nlev). <br>&nbsp;&nbsp;&nbsp;<span class="type">[real, optional, dimension(:,:,:)]</span></td>
</tr>
<tr>
<td valign="top" align="left"><tt>Time&nbsp;&nbsp;&nbsp;</tt></td><td>   Model time. <br>&nbsp;&nbsp;&nbsp;<span class="type">[type(time_type)]</span></td>
</tr>
<tr>
<td valign="top" align="left"><tt>axes&nbsp;&nbsp;&nbsp;</tt></td><td>   The axes relating to the tracer array dimensioned as
   (nlon, nlat, nlev, ntime) <br>&nbsp;&nbsp;&nbsp;<span class="type">[integer, dimension(4)]</span></td>
</tr>
</table>
</dd>
<br>
<dt>
<b>INPUT/OUTPUT</b>
</dt>
<dd>
<table border="0">
<tr>
<td valign="top" align="left"><tt>r&nbsp;&nbsp;&nbsp;</tt></td><td>   Tracer fields dimensioned as (nlon,nlat,nlev,ntrace). <br>&nbsp;&nbsp;&nbsp;<span class="type">[real, dimension(:,:,:,:)]</span></td>
</tr>
</table>
</dd>
<br>
</dl>
</li>
<li>
<a name="atmos_SO2_emission"></a>
<h4>atmos_SO2_emission</h4>
<pre>
<b>call atmos_SO2_emission </b>()</pre>
<dl>
<dt>
<b>DESCRIPTION</b>
</dt>
<dd>   A routine to calculate SO2 emission from volcanoes, biomass burning,
   anthropogenic sources, aircraft. </dd>
<br>
<br>
<dt>
<b>INPUT</b>
</dt>
<dd>
<table border="0">
<tr>
<td valign="top" align="left"><tt>mask&nbsp;&nbsp;&nbsp;</tt></td><td>   optional mask (0. or 1.) that designates which grid points
   are above (=1.) or below (=0.) the ground dimensioned as
   (nlon,nlat,nlev). <br>&nbsp;&nbsp;&nbsp;<span class="type">[real, optional, dimension(:,:,:)]</span></td>
</tr>
<tr>
<td valign="top" align="left"><tt>Time&nbsp;&nbsp;&nbsp;</tt></td><td>   Model time. <br>&nbsp;&nbsp;&nbsp;<span class="type">[type(time_type)]</span></td>
</tr>
<tr>
<td valign="top" align="left"><tt>axes&nbsp;&nbsp;&nbsp;</tt></td><td>   The axes relating to the tracer array dimensioned as
   (nlon, nlat, nlev, ntime) <br>&nbsp;&nbsp;&nbsp;<span class="type">[integer, dimension(4)]</span></td>
</tr>
</table>
</dd>
<br>
<dt>
<b>INPUT/OUTPUT</b>
</dt>
<dd>
<table border="0">
<tr>
<td valign="top" align="left"><tt>r&nbsp;&nbsp;&nbsp;</tt></td><td>   Tracer fields dimensioned as (nlon,nlat,nlev,ntrace). <br>&nbsp;&nbsp;&nbsp;<span class="type">[real, dimension(:,:,:,:)]</span></td>
</tr>
</table>
</dd>
<br>
</dl>
</li>
<li>
<a name="atmos_SO4_emission"></a>
<h4>atmos_SO4_emission</h4>
<pre>
<b>call atmos_SO4_emission </b>()</pre>
<dl>
<dt>
<b>DESCRIPTION</b>
</dt>
<dd>   A routine to calculate SO4 emission from volcanoes, biomass burning,
   anthropogenic sources, aircraft. </dd>
<br>
<br>
<dt>
<b>INPUT</b>
</dt>
<dd>
<table border="0">
<tr>
<td valign="top" align="left"><tt>mask&nbsp;&nbsp;&nbsp;</tt></td><td>   optional mask (0. or 1.) that designates which grid points
   are above (=1.) or below (=0.) the ground dimensioned as
   (nlon,nlat,nlev). <br>&nbsp;&nbsp;&nbsp;<span class="type">[real, optional, dimension(:,:,:)]</span></td>
</tr>
<tr>
<td valign="top" align="left"><tt>Time&nbsp;&nbsp;&nbsp;</tt></td><td>   Model time. <br>&nbsp;&nbsp;&nbsp;<span class="type">[type(time_type)]</span></td>
</tr>
<tr>
<td valign="top" align="left"><tt>axes&nbsp;&nbsp;&nbsp;</tt></td><td>   The axes relating to the tracer array dimensioned as
   (nlon, nlat, nlev, ntime) <br>&nbsp;&nbsp;&nbsp;<span class="type">[integer, dimension(4)]</span></td>
</tr>
</table>
</dd>
<br>
<dt>
<b>INPUT/OUTPUT</b>
</dt>
<dd>
<table border="0">
<tr>
<td valign="top" align="left"><tt>r&nbsp;&nbsp;&nbsp;</tt></td><td>   Tracer fields dimensioned as (nlon,nlat,nlev,ntrace). <br>&nbsp;&nbsp;&nbsp;<span class="type">[real, dimension(:,:,:,:)]</span></td>
</tr>
</table>
</dd>
<br>
</dl>
</li>
<li>
<a name="get_SO2_nerup_volc_emis"></a>
<h4>get_SO2_nerup_volc_emis</h4>
<dl>
<dt>
<b>DESCRIPTION</b>
</dt>
<dd></dd>
<br>
<br>
</dl>
</li>
</ol>
<!-- END PUBLIC ROUTINES -->
<a name="PUBLIC TYPES"></a>
<!-- BEGIN PUBLIC TYPES -->
<!-- END PUBLIC TYPES --><a name="NAMELIST"></a>
<!-- BEGIN NAMELIST -->
<!-- END NAMELIST --><a name="DIAGNOSTIC FIELDS"></a>
<!-- BEGIN DIAGNOSTIC FIELDS -->
<!-- END DIAGNOSTIC FIELDS --><a name="DATA SETS"></a>
<!-- BEGIN DATA SETS -->
<hr>
<h4>DATA SETS</h4>
<div>None.<br>
<br>
</div>
<!-- END DATA SETS -->
<a name="PUBLIC CODE"></a>
<!-- BEGIN PUBLIC CODE -->
<!-- END PUBLIC CODE --><a name="ERROR MESSAGES"></a>
<!-- BEGIN ERROR MESSAGES -->
<hr>
<h4>ERROR MESSAGES</h4>
<div>None.<br>
<br>
</div>
<!-- END ERROR MESSAGES -->
<hr>
<div align="right">
<font size="-1"><a href="#TOP">top</a></font>
</div>
</body>
</html>
